.nd-text-input{
    display: inline-flex;
    height: 32px;
    border: 1px solid #ccc;
    border-radius: 4px;
    transition: border-color 0.3s ease;
    align-items: center;
    width: 100%;
    .nd-text-input-element{
        width: 100%;
        flex-grow: 1;
        appearance: none;
        border: none;
        outline: none;
        padding: 0 10px;
        background: none;
        box-sizing: border-box;
        color: var(--nd-color-default);
        flex: 1;
    }
    .nd-text-input-suffix{
        display: flex;
        align-items: center;
        padding: 0 10px;
        height: 100%;
        .nd-text-input-suffix-clear{
            width: 16px;
            height: 16px;
            border-radius: 50%;
            color: var(--nd-color-default);
            border: 1px solid var(--nd-color-default-2);
            font-size: 12px;
            text-align: center;
            line-height: 16px;
            box-sizing: border-box;
            flex-shrink: 0;
            cursor: pointer;
        }
    }
    &.nd-text-input-focus{
        border-color: var(--nd-color-primary);
    }
    &.nd-text-input-disabled{
        cursor: not-allowed;
        border-color: var(--nd-color-info-4);
        color: var(--nd-color-info-3);
        background-color: var(--nd-color-default-2);
        opacity: .7;
        .nd-text-input-element{
            cursor: not-allowed;
        }
    }
}